package com.qianniu.napi.admin.entity;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.common.base.Strings;
import com.qianniu.napi.common.util.DateUtil;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 商品信息
 * </p>
 *
 * @author chenxuebin
 * @since 2018-06-23
 */
@TableName("t_goods")
public class Goods extends Model<Goods> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 商品分类
     */
    private Long cid;

    /**
     * 首页显示分类
     */
    private Long gdcid;

    private Long tplid;

    /**
     * 商品特色、卖点
     */
    private String characteristic;
    /**
     * 物流模板编号，0 代表不使用物流
     */
    @TableField("logistics_id")
    private Long logisticsId;
    /**
     * 最低价
     */
    @TableField("min_price")
    private BigDecimal minPrice;
    /**
     * 最终售价
     */
    private BigDecimal saleprice;
    private BigDecimal hyprice;

    private BigDecimal lmfan;
    private BigDecimal ptfan;
    /**
     * 商品名
     */
    private String name;

    /**
     * 收藏数
     */
    @TableField("number_fav")
    private Integer numberFav;
    /**
     * 好评数
     */
    @TableField("number_grade")
    private Integer numberGrade;
    /**
     * 订单数
     */
    @TableField("number_orders")
    private Integer numberOrders;

    /**
     * 销量数
     */
    @TableField("number_sale")
    private Integer numberSale;

    @TableField("has_sku")
    private Integer hasSku;

    private Integer type;
    private Integer fxlevel;
    private Integer sort;

    /**
     * 售价
     */
    private BigDecimal price;
    /**
     * 排序
     */
    private Integer paixu;


    private Integer xiangou;

    @TableField(exist = false)
    private Integer mygou;
    private Integer jifen;
    private Integer ptotal;

    private String thumb;
    private String thumbhd;
    private String photos;

    private String sname;
    @TableField(exist = false)
    private Integer number = 0;

    private String hytype;
    private String quans;

    @TableField(exist = false)
    private String hytypeName;

    @TableField(exist = false)
    private String yxtypeName;

    @TableField(exist = false)
    private Store store;

    @TableField(exist = false)
    private List<PintuanLog> tuanyuan;
    @TableField(exist = false)
    private List<JizanLog> jzusers;
    @TableField(exist = false)
    private List<ChoujiangLog> cjusers;
    @TableField(exist = false)
    private List<Choujiang> jiangpins;
    @TableField(exist = false)
    private Integer hasbuy;
    @TableField(exist = false)
    private Integer cjshu;
    @TableField(exist = false)
    private Integer iszhong;
    @TableField(exist = false)
    private Integer todayshare;
    @TableField(exist = false)
    private List<User> users;

    @TableField(exist = false)
    private Order order;
    @TableField(exist = false)
    private List<Order> orders;

    @TableField(exist = false)
    private List<Order> toporders;
    @TableField(exist = false)
    private List<Order> pxorders;

    @TableField(exist = false)
    private List<CutpriceHelp> kanyuan;
    @TableField(exist = false)
    private List<CutpriceHelp> kanyuanbang;

    @TableField(exist = false)
    private List<GoodsSku> skuList;

    @TableField(exist = false)
    private Boolean shoucang;
    @TableField(exist = false)
    private Boolean dpshoucang;

    @TableField(exist = false)
    private Boolean ishdtpl;

    @TableField(exist = false)
    private Boolean isme;
    @TableField(exist = false)
    private Boolean isAgent;

    @TableField(exist = false)
    private Map smliping;

    @TableField(exist = false)
    private GoodsCategory category;

    @TableField(exist = false)
    private String skugg;
    @TableField(exist = false)
    private String mulExtids;
    @TableField(exist = false)
    private String skuinfo;

    /**
     * 产品类型@1:实物产品；2:虚拟产品；3:预约到店服务；4：预约上门服务
     */
    private Integer gtype;

    /**
     * 起售时间
     */
    @TableField(exist = false)
    private String dateStart;

    /**
     * 停售时间
     */
    @TableField(exist = false)
    private String dateEnd;

    /**
     * 停售时间
     */
    @TableField(exist = false)
    private String datetimeEnd;

    @TableField("date_start")
    private Date startDate;

    @TableField("date_end")
    private Date endDate;

    /**
     * 介绍
     */
    private String info;

    //文字介绍
    private String jieshao;
    /**
     * 启用状态=商品状态：上架，下架
     */
    private Integer state;
    private Integer status;
    private Integer timeout;

    /**
     * 总库存数
     */
    private Integer stores;
    /**
     * 商品视频
     */
    private String video;

    /**
     * 商品图
     */
    private String pic;
    private String homeurl;

    /**
     * 商品包装清单
     */
    private String packinglist;

    /**
     * 售后服务
     */
    private String afterservice;

    //规格参数
    private String introduction;

    @TableField("is_deleted")
    private Integer isDeleted;

    /**
     * 自购赠送类型0:无1:送积分2:送现金3:送优惠券；4：虚拟币
     */
    @TableField("zgfan_type")
    private Integer zgfanType;

    /**
     * 自购奖励积分|现金|优惠券|虚拟币
     */
    @TableField("zgfan_mount")
    private Integer zgfanMount;

    /**
     * 自购奖励类型ID，如券id
     */
    @TableField("zgfan_ywid")
    private Long zgfanYwid;

    /**
     * 分享奖励0:无1:送积分2:送现金3:送优惠券
     */
    @TableField("share_bonus_type")
    private Integer shareBonusType;

    /**
     * 奖励积分|现金|优惠券
     */
    @TableField("share_mount")
    private BigDecimal shareMount;

    /**
     * 分享奖励类型ID，如券id
     */
    @TableField("share_ywid")
    private Long shareYwid;

    private String sharewa;
    private String shareimg;

    private String xmtype;

    /**
     * 最大可抵扣积分比例（实际价格的比例）
     */
    @TableField("max_use_jifen")
    private Double maxUseJifen;

    /**
     * 可扣除优惠券
     */
    @TableField("max_use_coupon")
    private Integer maxUseCoupon;

    /**
     * 是否支持会员卡交易
     */
    @TableField("is_member")
    private Integer isMember;

    /**
     * 是否支持积分抵扣交易
     */
    @TableField("is_jifen")
    private Integer isJifen;

    @TableField("is_xuni")
    private Integer isXuni;
    private Integer isqunzf;

    /**
     * 是否支持优惠券交易
     */
    @TableField("is_coupon")
    private Integer isCoupon;

    @TableField("is_hot")
    private Integer isHot;

    @TableField("is_recommend")
    private Integer isRecommend;

    @TableField("is_nav")
    private Integer isNav;

    @TableField("is_share")
    private Integer isShare;

    private Integer mlevel;
    private Integer fxmode;

    @TableField("fantime_type")
    private Integer fantimeType;

    @TableField(exist = false)
    private Integer dhshu;

    @TableField(exist = false)
    private List<PintuanOpen> pintuan;

    @TableField(exist = false)
    private CutpriceOpen kanjia;

    private Integer canyushu;
    private Integer fenxiaoshu;
    private Integer hexiaoshu;
    private Integer fxjiangshu;

    private String extkey1;
    @TableField(exist = false)
    private String extval1;

    private String extkey2;
    @TableField(exist = false)
    private String extval2;

    private String extkey3;
    @TableField(exist = false)
    private String extval3;

    private String extval;
    private String extkey;


    @TableField(exist = false)
    private String storename;

    @TableField(exist = false)
    private String phone;

    @TableField(exist = false)
    private String linkman;

    @TableField(exist = false)
    private String storepic;

    @TableField(exist = false)
    private Integer slevel;
    @TableField(exist = false)
    private Double distance;

    /**
     * 商品二维码
     */
    private String barcode;
    /**
     * 商品重量：KG
     */
    private Double weight;
    /**
     * 浏览量
     */
    private Integer views;
    private Integer sharenum;
    private Integer zhiding;
    private Integer pstype;

    @JsonIgnore
    private Long uid;
    @JsonIgnore
    private Long mid;
    @JsonIgnore
    private Long mpid;
    @JsonIgnore
    private Long sid;
    @JsonIgnore
    private Long leagueid;
    private Long supplyid;
    private Long staffid;

    private Integer timelong;
    private Integer fanwei;

    @TableField(exist = false)
    private Integer musicid;
    @TableField(exist = false)
    private String musicurl;
    @TableField(exist = false)
    private GoodsToupiao toupiao;

    @JsonIgnore
    private Long modifier;
    @JsonIgnore
    private Date createtime;
    @JsonIgnore
    private Date modifytime;


    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getCid() {
        return cid;
    }

    public void setCid(Long cid) {
        this.cid = cid;
    }

    public String getCharacteristic() {
        return characteristic;
    }

    public void setCharacteristic(String characteristic) {
        this.characteristic = characteristic;
    }

    public Long getLogisticsId() {
        return logisticsId;
    }

    public void setLogisticsId(Long logisticsId) {
        this.logisticsId = logisticsId;
    }

    public BigDecimal getMinPrice() {
        return minPrice;
    }

    public void setMinPrice(BigDecimal minPrice) {
        this.minPrice = minPrice;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getNumberFav() {
        return numberFav;
    }

    public void setNumberFav(Integer numberFav) {
        this.numberFav = numberFav;
    }

    public Integer getNumberGrade() {
        return numberGrade;
    }

    public void setNumberGrade(Integer numberGrade) {
        this.numberGrade = numberGrade;
    }

    public Integer getNumberOrders() {
        return numberOrders;
    }

    public void setNumberOrders(Integer numberOrders) {
        this.numberOrders = numberOrders;
    }

    public Integer getGtype() {
        return gtype;
    }

    public void setGtype(Integer gtype) {
        this.gtype = gtype;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Integer getPaixu() {
        return paixu;
    }

    public void setPaixu(Integer paixu) {
        this.paixu = paixu;
    }

    public String getPackinglist() {
        return packinglist;
    }

    public void setPackinglist(String packinglist) {
        this.packinglist = packinglist;
    }

    public String getAfterservice() {
        return afterservice;
    }

    public void setAfterservice(String afterservice) {
        this.afterservice = afterservice;
    }

    public Integer getHasSku() {
        return hasSku;
    }

    public void setHasSku(Integer hasSku) {
        this.hasSku = hasSku;
    }

    public String getInfo() {
        return info;
    }

    public void setInfo(String info) {
        this.info = info;
    }

    public Integer getState() {
        return state;
    }

    public void setState(Integer state) {
        this.state = state;
    }

    public Integer getStores() {
        return stores;
    }

    public void setStores(Integer stores) {
        this.stores = stores;
    }

    public Integer getXiangou() {
        return xiangou;
    }

    public void setXiangou(Integer xiangou) {
        this.xiangou = xiangou;
    }

    public String getPic() {
        return pic;
    }

    public void setPic(String pic) {
        this.pic = pic;
    }

    public Integer getShareBonusType() {
        return shareBonusType;
    }

    public void setShareBonusType(Integer shareBonusType) {
        this.shareBonusType = shareBonusType;
    }

    public BigDecimal getShareMount() {
        return shareMount;
    }

    public void setShareMount(BigDecimal shareMount) {
        this.shareMount = shareMount;
    }

    public Double getMaxUseJifen() {
        return maxUseJifen;
    }

    public void setMaxUseJifen(Double maxUseJifen) {
        this.maxUseJifen = maxUseJifen;
    }

    public Integer getMaxUseCoupon() {
        return maxUseCoupon;
    }

    public void setMaxUseCoupon(Integer maxUseCoupon) {
        this.maxUseCoupon = maxUseCoupon;
    }

    public Integer getNumberSale() {
        return numberSale;
    }

    public void setNumberSale(Integer numberSale) {
        this.numberSale = numberSale;
    }

    public String getBarcode() {
        return barcode;
    }

    public void setBarcode(String barcode) {
        this.barcode = barcode;
    }

    public Double getWeight() {
        return weight;
    }

    public void setWeight(Double weight) {
        this.weight = weight;
    }

    public Integer getViews() {
        return views;
    }

    public void setViews(Integer views) {
        this.views = views;
    }

    public BigDecimal getSaleprice() {
        return saleprice;
    }

    public void setSaleprice(BigDecimal saleprice) {
        this.saleprice = saleprice;
    }

    public Date getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }

    public Date getModifytime() {
        return modifytime;
    }

    public void setModifytime(Date modifytime) {
        this.modifytime = modifytime;
    }

    public Long getModifier() {
        return modifier;
    }

    public void setModifier(Long modifier) {
        this.modifier = modifier;
    }

    public Integer getIsMember() {
        return isMember;
    }

    public void setIsMember(Integer isMember) {
        this.isMember = isMember;
    }

    public Integer getIsJifen() {
        return isJifen;
    }

    public void setIsJifen(Integer isJifen) {
        this.isJifen = isJifen;
    }

    public Integer getIsCoupon() {
        return isCoupon;
    }

    public void setIsCoupon(Integer isCoupon) {
        this.isCoupon = isCoupon;
    }

    public Integer getIsHot() {
        return isHot;
    }

    public void setIsHot(Integer isHot) {
        this.isHot = isHot;
    }

    public void setMid(Long mid) {
        this.mid = mid;
    }

    public Long getUid() {
        return uid;
    }

    public void setUid(Long uid) {
        this.uid = uid;
    }

    public Long getMid() {
        return mid;
    }

    public Long getMpid() {
        return mpid;
    }

    public void setMpid(Long mpid) {
        this.mpid = mpid;
    }

    public String getIntroduction() {
        return introduction;
    }

    public void setIntroduction(String introduction) {
        this.introduction = introduction;
    }

    public String getPhotos() {
        return photos;
    }

    public void setPhotos(String photos) {
        this.photos = photos;
    }

    public Integer getIsRecommend() {
        return isRecommend;
    }

    public void setIsRecommend(Integer isRecommend) {
        this.isRecommend = isRecommend;
    }

    public Integer getIsNav() {
        return isNav;
    }

    public void setIsNav(Integer isNav) {
        this.isNav = isNav;
    }

    public Integer getDhshu() {
        return dhshu;
    }

    public void setDhshu(Integer dhshu) {
        this.dhshu = dhshu;
    }

    public Long getSid() {
        return sid;
    }

    public void setSid(Long sid) {
        this.sid = sid;
    }

    public Integer getJifen() {
        return jifen;
    }

    public void setJifen(Integer jifen) {
        this.jifen = jifen;
    }

    public Integer getZhiding() {
        return zhiding;
    }

    public void setZhiding(Integer zhiding) {
        this.zhiding = zhiding;
    }

    public Integer getCanyushu() {
        return canyushu;
    }

    public void setCanyushu(Integer canyushu) {
        this.canyushu = canyushu;
    }

    public String getJieshao() {
        return jieshao;
    }

    public void setJieshao(String jieshao) {
        this.jieshao = jieshao;
    }

    public Integer getIsShare() {
        return isShare;
    }

    public void setIsShare(Integer isShare) {
        this.isShare = isShare;
    }

    public String getSname() {
        return sname;
    }

    public void setSname(String sname) {
        this.sname = sname;
    }

    public String getHytype() {
        return hytype;
    }

    public void setHytype(String hytype) {
        this.hytype = hytype;
    }

    public String getHytypeName() {
        return hytypeName;
    }

    public void setHytypeName(String hytypeName) {
        this.hytypeName = hytypeName;
    }

    public String getYxtypeName() {
        return yxtypeName;
    }

    public void setYxtypeName(String yxtypeName) {
        this.yxtypeName = yxtypeName;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    public Store getStore() {
        return store;
    }

    public void setStore(Store store) {
        this.store = store;
    }

    public Boolean getShoucang() {
        return shoucang;
    }

    public void setShoucang(Boolean shoucang) {
        this.shoucang = shoucang;
    }

    public List<PintuanOpen> getPintuan() {
        return pintuan;
    }

    public void setPintuan(List<PintuanOpen> pintuan) {
        this.pintuan = pintuan;
    }

    public List<PintuanLog> getTuanyuan() {
        return tuanyuan;
    }

    public void setTuanyuan(List<PintuanLog> tuanyuan) {
        this.tuanyuan = tuanyuan;
    }

    public List<CutpriceHelp> getKanyuan() {
        return kanyuan;
    }

    public void setKanyuan(List<CutpriceHelp> kanyuan) {
        this.kanyuan = kanyuan;
    }

    public List<GoodsSku> getSkuList() {
        return skuList;
    }

    public void setSkuList(List<GoodsSku> skuList) {
        this.skuList = skuList;
    }

    public Boolean getDpshoucang() {
        return dpshoucang;
    }

    public void setDpshoucang(Boolean dpshoucang) {
        this.dpshoucang = dpshoucang;
    }

    public String getExtkey1() {
        return extkey1;
    }

    public void setExtkey1(String extkey1) {
        this.extkey1 = extkey1;
    }

    public String getExtval1() {
        return extval1;
    }

    public void setExtval1(String extval1) {
        this.extval1 = extval1;
    }

    public String getExtkey2() {
        return extkey2;
    }

    public void setExtkey2(String extkey2) {
        this.extkey2 = extkey2;
    }

    public String getExtval2() {
        return extval2;
    }

    public void setExtval2(String extval2) {
        this.extval2 = extval2;
    }

    public String getExtkey3() {
        return extkey3;
    }

    public void setExtkey3(String extkey3) {
        this.extkey3 = extkey3;
    }

    public String getExtval3() {
        return extval3;
    }

    public void setExtval3(String extval3) {
        this.extval3 = extval3;
    }

    public Integer getIsXuni() {
        return isXuni;
    }

    public void setIsXuni(Integer isXuni) {
        this.isXuni = isXuni;
    }

    public Integer getFenxiaoshu() {
        return fenxiaoshu;
    }

    public void setFenxiaoshu(Integer fenxiaoshu) {
        this.fenxiaoshu = fenxiaoshu;
    }

    public Integer getIsDeleted() {
        return isDeleted;
    }

    public void setIsDeleted(Integer isDelete) {
        this.isDeleted = isDelete;
    }

    public Integer getPtotal() {
        return ptotal;
    }

    public void setPtotal(Integer ptotal) {
        this.ptotal = ptotal;
    }

    public Integer getFxlevel() {
        return fxlevel;
    }

    public void setFxlevel(Integer fxlevel) {
        this.fxlevel = fxlevel;
    }

    public Integer getZgfanType() {
        return zgfanType;
    }

    public void setZgfanType(Integer zgfanType) {
        this.zgfanType = zgfanType;
    }

    public Integer getZgfanMount() {
        return zgfanMount;
    }

    public void setZgfanMount(Integer zgfanMount) {
        this.zgfanMount = zgfanMount;
    }

    public Integer getFxmode() {
        return fxmode;
    }

    public void setFxmode(Integer fxmode) {
        this.fxmode = fxmode;
    }

    public Integer getMlevel() {
        return mlevel;
    }

    public void setMlevel(Integer mlevel) {
        this.mlevel = mlevel;
    }

    public Long getGdcid() {
        return gdcid;
    }

    public void setGdcid(Long gdcid) {
        this.gdcid = gdcid;
    }

    public Integer getNumber() {
        return number;
    }

    public void setNumber(Integer number) {
        this.number = number;
    }

    public String getSharewa() {
        return sharewa;
    }

    public void setSharewa(String sharewa) {
        this.sharewa = sharewa;
    }

    public String getShareimg() {
        return shareimg;
    }

    public void setShareimg(String shareimg) {
        this.shareimg = shareimg;
    }

    public String getQuans() {
        return quans;
    }

    public void setQuans(String quans) {
        this.quans = quans;
    }

    public String getThumb() {
        return thumb;
    }

    public void setThumb(String thumb) {
        this.thumb = thumb;
    }

    public String getExtval() {
        return extval;
    }

    public void setExtval(String extval) {
        this.extval = extval;
    }

    public String getExtkey() {
        return extkey;
    }

    public void setExtkey(String extkey) {
        this.extkey = extkey;
    }

    public Long getZgfanYwid() {
        return zgfanYwid;
    }

    public void setZgfanYwid(Long zgfanYwid) {
        this.zgfanYwid = zgfanYwid;
    }

    public Long getShareYwid() {
        return shareYwid;
    }

    public void setShareYwid(Long shareYwid) {
        this.shareYwid = shareYwid;
    }

    public String getStorename() {
        return storename;
    }

    public void setStorename(String storename) {
        this.storename = storename;
    }

    public String getStorepic() {
        return storepic;
    }

    public void setStorepic(String storepic) {
        this.storepic = storepic;
    }

    public Boolean getIsme() {
        return isme;
    }

    public void setIsme(Boolean isme) {
        this.isme = isme;
    }

    public Integer getTimeout() {
        return timeout;
    }

    public void setTimeout(Integer timeout) {
        this.timeout = timeout;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getSlevel() {
        return slevel;
    }

    public void setSlevel(Integer slevel) {
        this.slevel = slevel;
    }

    public List<CutpriceHelp> getKanyuanbang() {
        return kanyuanbang;
    }

    public void setKanyuanbang(List<CutpriceHelp> kanyuanbang) {
        this.kanyuanbang = kanyuanbang;
    }

    public CutpriceOpen getKanjia() {
        return kanjia;
    }

    public void setKanjia(CutpriceOpen kanjia) {
        this.kanjia = kanjia;
    }

    public String getThumbhd() {
        return thumbhd;
    }

    public void setThumbhd(String thumbhd) {
        this.thumbhd = thumbhd;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getLinkman() {
        return linkman;
    }

    public void setLinkman(String linkman) {
        this.linkman = linkman;
    }

    public Long getTplid() {
        return tplid;
    }

    public void setTplid(Long tplid) {
        this.tplid = tplid;
    }

    public List<User> getUsers() {
        return users;
    }

    public void setUsers(List<User> users) {
        this.users = users;
    }

    public Integer getIsqunzf() {
        return isqunzf;
    }

    public void setIsqunzf(Integer isqunzf) {
        this.isqunzf = isqunzf;
    }

    public Integer getMusicid() {
        return musicid;
    }

    public void setMusicid(Integer musicid) {
        this.musicid = musicid;
    }

    public String getMusicurl() {
        return musicurl;
    }

    public void setMusicurl(String musicurl) {
        this.musicurl = musicurl;
    }

    public Integer getMygou() {
        return mygou;
    }

    public void setMygou(Integer mygou) {
        this.mygou = mygou;
    }

    public List<Order> getOrders() {
        return orders;
    }

    public void setOrders(List<Order> orders) {
        this.orders = orders;
    }

    public Long getLeagueid() {
        return leagueid;
    }

    public void setLeagueid(Long leagueid) {
        this.leagueid = leagueid;
    }

    public List<Order> getPxorders() {
        return pxorders;
    }

    public void setPxorders(List<Order> pxorders) {
        this.pxorders = pxorders;
    }

    public Integer getHexiaoshu() {
        return hexiaoshu;
    }

    public void setHexiaoshu(Integer hexiaoshu) {
        this.hexiaoshu = hexiaoshu;
    }

    public List<Order> getToporders() {
        return toporders;
    }

    public void setToporders(List<Order> toporders) {
        this.toporders = toporders;
    }

    public Integer getFxjiangshu() {
        return fxjiangshu;
    }

    public void setFxjiangshu(Integer fxjiangshu) {
        this.fxjiangshu = fxjiangshu;
    }

    public GoodsToupiao getToupiao() {
        return toupiao;
    }

    public void setToupiao(GoodsToupiao toupiao) {
        this.toupiao = toupiao;
    }

    public List<JizanLog> getJzusers() {
        return jzusers;
    }

    public void setJzusers(List<JizanLog> jzusers) {
        this.jzusers = jzusers;
    }

    public Order getOrder() {
        return order;
    }

    public void setOrder(Order order) {
        this.order = order;
    }

    public List<ChoujiangLog> getCjusers() {
        return cjusers;
    }

    public void setCjusers(List<ChoujiangLog> cjusers) {
        this.cjusers = cjusers;
    }

    public List<Choujiang> getJiangpins() {
        return jiangpins;
    }

    public void setJiangpins(List<Choujiang> jiangpins) {
        this.jiangpins = jiangpins;
    }

    public Integer getHasbuy() {
        return hasbuy;
    }

    public void setHasbuy(Integer hasbuy) {
        this.hasbuy = hasbuy;
    }

    public Integer getIszhong() {
        return iszhong;
    }

    public void setIszhong(Integer iszhong) {
        this.iszhong = iszhong;
    }

    public Integer getTodayshare() {
        return todayshare;
    }

    public void setTodayshare(Integer todayshare) {
        this.todayshare = todayshare;
    }

    public Integer getCjshu() {
        return cjshu;
    }

    public void setCjshu(Integer cjshu) {
        this.cjshu = cjshu;
    }

    public Double getDistance() {
        return distance;
    }

    public void setDistance(Double distance) {
        this.distance = distance;
    }

    public String getVideo() {
        return video;
    }

    public void setVideo(String video) {
        this.video = video;
    }

    public BigDecimal getLmfan() {
        return lmfan;
    }

    public void setLmfan(BigDecimal lmfan) {
        this.lmfan = lmfan;
    }

    public BigDecimal getPtfan() {
        return ptfan;
    }

    public void setPtfan(BigDecimal ptfan) {
        this.ptfan = ptfan;
    }


    public Date getStartDate() {
        return startDate;
    }

    public void setStartDate(Date startDate) {
        this.startDate = startDate;
    }

    public Date getEndDate() {
        return endDate;
    }

    public void setEndDate(Date endDate) {
        this.endDate = endDate;
    }

    public BigDecimal getHyprice() {
        return hyprice;
    }

    public void setHyprice(BigDecimal hyprice) {
        this.hyprice = hyprice;
    }

    public String getHomeurl() {
        return homeurl;
    }

    public void setHomeurl(String homeurl) {
        this.homeurl = homeurl;
    }

    public GoodsCategory getCategory() {
        return category;
    }

    public void setCategory(GoodsCategory category) {
        this.category = category;
    }

    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public String getDateStart() {
        if (!Strings.isNullOrEmpty(dateStart)) return dateStart;
        if (this.startDate != null) dateStart = DateUtil.toDateString(this.startDate, "yyyy-MM-dd HH:mm:ss");
        return dateStart;
    }

    public void setDateStart(String dateStart) {
        this.dateStart = dateStart;
    }

    public String getDateEnd() {
        if (!Strings.isNullOrEmpty(dateEnd)) return dateEnd;
        if (this.endDate != null) dateEnd = DateUtil.toDateString(this.endDate, "yyyy-MM-dd HH:mm:ss");
        return dateEnd;
    }

    public void setDateEnd(String dateEnd) {

        this.dateEnd = dateEnd;
    }

    public String getDatetimeEnd() {
        if (endDate==null) return null;
        if (this.endDate != null) datetimeEnd = DateUtil.toDateString(this.endDate, "yyyy-MM-dd HH:mm");
        return datetimeEnd;
    }

    public void setDatetimeEnd(String datetimeEnd) {
        this.datetimeEnd = datetimeEnd;
    }

    public Integer getSharenum() {
        return sharenum;
    }

    public void setSharenum(Integer sharenum) {
        this.sharenum = sharenum;
    }

    public Boolean getIshdtpl() {
        return ishdtpl;
    }

    public void setIshdtpl(Boolean ishdtpl) {
        this.ishdtpl = ishdtpl;
    }

    public Integer getFantimeType() {
        return fantimeType;
    }

    public void setFantimeType(Integer fantimeType) {
        this.fantimeType = fantimeType;
    }

    public Long getSupplyid() {
        return supplyid;
    }

    public void setSupplyid(Long supplyid) {
        this.supplyid = supplyid;
    }

    public Integer getPstype() {
        return pstype;
    }

    public void setPstype(Integer pstype) {
        this.pstype = pstype;
    }

    public Long getStaffid() {
        return staffid;
    }

    public void setStaffid(Long staffid) {
        this.staffid = staffid;
    }

    public Integer getTimelong() {
        return timelong;
    }

    public void setTimelong(Integer timelong) {
        this.timelong = timelong;
    }

    public String getXmtype() {
        return xmtype;
    }

    public void setXmtype(String xmtype) {
        this.xmtype = xmtype;
    }

    public Integer getFanwei() {
        return fanwei;
    }

    public void setFanwei(Integer fanwei) {
        this.fanwei = fanwei;
    }

    public Map getSmliping() {
        return smliping;
    }

    public void setSmliping(Map smliping) {
        this.smliping = smliping;
    }

    public String getSkugg() {
        return skugg;
    }

    public void setSkugg(String skugg) {
        this.skugg = skugg;
    }

    public String getMulExtids() {
        return mulExtids;
    }

    public void setMulExtids(String mulExtids) {
        this.mulExtids = mulExtids;
    }

    public String getSkuinfo() {
        return skuinfo;
    }

    public void setSkuinfo(String skuinfo) {
        this.skuinfo = skuinfo;
    }

    public Boolean getAgent() {
        return isAgent;
    }

    public void setAgent(Boolean agent) {
        isAgent = agent;
    }

    @Override
    protected Serializable pkVal() {
        return this.id;
    }

    @Override
    public String toString() {
        return "Goods{" +
                "id=" + id +
                ", cid=" + cid +
                ", characteristic='" + characteristic + '\'' +
                ", logisticsId=" + logisticsId +
                ", minPrice=" + minPrice +
                ", saleprice=" + saleprice +
                ", name='" + name + '\'' +
                ", numberFav=" + numberFav +
                ", numberGrade=" + numberGrade +
                ", numberOrders=" + numberOrders +
                ", numberSale=" + numberSale +
                ", hasSku=" + hasSku +
                ", type=" + type +
                ", fxlevel=" + fxlevel +
                ", price=" + price +
                ", paixu=" + paixu +
                ", xiangou=" + xiangou +
                ", jifen=" + jifen +
                ", ptotal=" + ptotal +
                ", photos='" + photos + '\'' +
                ", sname='" + sname + '\'' +
                ", hytype='" + hytype + '\'' +
                ", hytypeName='" + hytypeName + '\'' +
                ", yxtypeName='" + yxtypeName + '\'' +
                ", store=" + store +
                ", tuanyuan=" + tuanyuan +
                ", kanyuan=" + kanyuan +
                ", skuList=" + skuList +
                ", shoucang=" + shoucang +
                ", dpshoucang=" + dpshoucang +
                ", gtype=" + gtype +
                ", dateStart=" + dateStart +
                ", dateEnd=" + dateEnd +
                ", info='" + info + '\'' +
                ", jieshao='" + jieshao + '\'' +
                ", state=" + state +
                ", stores=" + stores +
                ", pic='" + pic + '\'' +
                ", packinglist='" + packinglist + '\'' +
                ", afterservice='" + afterservice + '\'' +
                ", introduction='" + introduction + '\'' +
                ", isDeleted=" + isDeleted +
                ", zgfanType=" + zgfanType +
                ", zgfanMount=" + zgfanMount +
                ", shareBonusType=" + shareBonusType +
                ", shareMount=" + shareMount +
                ", maxUseJifen=" + maxUseJifen +
                ", maxUseCoupon=" + maxUseCoupon +
                ", isMember=" + isMember +
                ", isJifen=" + isJifen +
                ", isXuni=" + isXuni +
                ", isCoupon=" + isCoupon +
                ", isHot=" + isHot +
                ", isRecommend=" + isRecommend +
                ", isNav=" + isNav +
                ", isShare=" + isShare +
                ", mlevel=" + mlevel +
                ", fxmode=" + fxmode +
                ", dhshu=" + dhshu +
                ", pintuan=" + pintuan +
                ", kanjia=" + kanjia +
                ", canyushu=" + canyushu +
                ", fenxiaoshu=" + fenxiaoshu +
                ", extkey1='" + extkey1 + '\'' +
                ", extval1='" + extval1 + '\'' +
                ", extkey2='" + extkey2 + '\'' +
                ", extval2='" + extval2 + '\'' +
                ", extkey3='" + extkey3 + '\'' +
                ", extval3='" + extval3 + '\'' +
                ", barcode='" + barcode + '\'' +
                ", weight=" + weight +
                ", views=" + views +
                ", zhiding=" + zhiding +
                ", uid=" + uid +
                ", mid=" + mid +
                ", mpid=" + mpid +
                ", sid=" + sid +
                ", modifier=" + modifier +
                ", createtime=" + createtime +
                ", modifytime=" + modifytime +
                '}';
    }
}
